#define _CRT_SECURE_NO_WARNINGS  1
#include<stdio.h>

#define offsetof(StructType, MemberName) (size_t)&(((StructType *)0)->MemberName)
#define SwapIntBit(n) (((n) & 0x55555555) << 1 | ((n) & 0xaaaaaaaa) >> 1)

typedef struct S
{
	int n;
	int a;
}S;

int main()
{
	//printf("%d", offsetof(S, a));
	printf("%d", SwapIntBit(5));

}

